home *** CD-ROM | disk | FTP | other *** search
/ Mac Magazin/MacEasy 8 / Mac Magazin and MacEasy Magazine CD - Issue 08.iso / Sharewarebibliothek / Musik / Night2Demo Folder / Nightingale 2.0 DEMO / Nightingale 2.0 DEMO.rsrc / TEXT_129_Encoding.txt < prev    next >
Text File  |  1994-10-13  |  2KB  |  66 lines

  1.  
  2. % Create encoding vector for Mac Fonts
  3. /MacEncoding 256 array def
  4.  
  5. % Copy first 128 entries of Times-Roman (standard ASCII) encoding into MacEncoding
  6. MacEncoding 0
  7.      /Times-Roman findfont /Encoding get
  8.     0 128 getinterval
  9.     putinterval
  10.  
  11. % Fix up a few strays in lower 128
  12. MacEncoding 16#27 /quotesingle put
  13. MacEncoding 16#60 /grave put
  14.  
  15. % Now define the encoding for the upper 128 chars
  16. /Adieresis /Aring /Ccedilla /Eacute /Ntilde /Odieresis /Udieresis /aacute
  17. /agrave /acircumflex /adieresis /atilde /aring /ccedilla /eacute /egrave
  18. /ecircumflex /edieresis /iacute /igrave /icircumflex /idieresis /ntilde /oacute
  19. /ograve /ocircumflex /odieresis /otilde /uacute /ugrave /ucircumflex /udieresis
  20. /dagger /degree /cent /sterling /section /bullet /paragraph /germandbls
  21. /registersans /copyrightsans /trademarksans /acute /dieresis /notequal /AE /Oslash
  22. /infinity /plusminus /lessequal /greaterequal /yen /mu /partialdiff /summation
  23. /product /pi /integral /ordfeminine /ordmasculine /Omega /ae /oslash
  24. /questiondown /exclamdown /logicalnot /radical /florin /approxequal /Delta /guillemotleft
  25. /guillemotright /ellipsis /space /Agrave /Atilde /Otilde /OE /oe
  26. /endash /emdash
  27. % 210 - 213 decimal == D2 - D5 hex
  28. /quotedblleft /quotedblright /quoteleft /quoteright
  29. /divide /lozenge
  30. /ydieresis /Ydieresis /fraction /currency /guilsinglleft /guilsinglright /fi /fl
  31. /daggerdbl /periodcentered /quotesinglbase /quotedblbase /perthousand
  32. /Acircumflex /Ecircumflex /Aacute
  33. /Edieresis /Egrave /Iacute /Icircumflex /Idieresis /Igrave /Oacute /Ocircumflex
  34. /apple /Ograve /Uacute /Ucircumflex /Ugrave /dotlessi /circumflex /tilde
  35. /macron /breve /dotaccent /ring /cedilla /hungarumlaut /ogonek /caron
  36. MacEncoding 128 128 getinterval
  37. astore pop
  38.  
  39. % Build new font names for re-encoded fonts
  40. /tmpname 72 string def
  41. /concatname {        % prefixStr /oldname -- /newname
  42.     1 index length /prelen exch def        % Store length of prefix string
  43.     dup length prelen add tmpname exch 0 exch getinterval
  44.     dup prelen 4 -1 roll dup length string cvs putinterval
  45.     dup 0 4 -1 roll putinterval
  46.     cvn
  47.     } bind def
  48.  
  49. % Re-encode fonts we use for Mac character set
  50. /RE {
  51.     dup (|______) exch concatname /newname exch def
  52.     FontDirectory newname known
  53.         {pop FontDirectory newname get}
  54.         {
  55.             findfont begin
  56.                 currentdict dup length dict begin
  57.                     {1 index /FID eq {pop pop} {def} ifelse} forall
  58.                     /FontName newname def
  59.                     /Encoding MacEncoding def
  60.                     newname currentdict definefont
  61.                     end
  62.                 end
  63.         } ifelse
  64.     } bind def
  65.  
  66.